In an application program, a network service, or similar situation, there has been an attempt to identify a delay part or an abnormal part under the condition where the operation is actually performed.
Usually, to identify the delay part or the abnormal part, it is desired to obtain the logs before and after that part and keep monitoring the state. For a processing sequence of, for example, start-A-B-C-D-end, logs with time stamps are obtained immediately before A, between A and B, between B and C, between C and D, and immediately after D. This allows identifying the process where delay occurs among the processes A to D. For example, in the case where the process B is delayed, the log immediately before B (between A and B) and the log immediately after B (between B and C) are referenced. This allows identifying the process B as a delay part.
On the other hand, in an application program or a network service, to identify a delay part or an abnormal part, it is desired to obtain a large amount of log in a large number of monitored parts. Accordingly, when a delay part or an abnormal part is narrowed down or identified, heavy overhead and network load occur.
There has been an attempt to obtain and analyze a detailed log in advance so as to acquire path information for each function (process) for identifying a problematic part without generating extra overhead or network load during the operation. In this case, during the operation, the path information acquired in advance is used to analyze and identify the problematic part. Here, the path information includes, for example, information (component group) that identifies a component to be used in each function. At this time, the path information for each function of Web is categorized by, for example, a uniform resource identifier (URI) that includes a uniform resource locator (URL).
For example, as illustrated in FIG. 20, assuming that p1 to p5 are network components, the message data flowing through the respective components p1 to p5 is analyzed to categorize the components to be used in respective functions Fi (i is a natural number) for each function Fi using URIs corresponding to the respective functions Fi.
Path of Function F1=p1-p2-p4-p5
Path of Function F2=p1-p3-p5
Path of Function F3=p1-p2
Path of Function F4=p3-p4
At this time, the URI includes parameters such as identification (ID). Therefore, an enormous number of different URIs appear based on the combinations of the parameters. For example, as illustrated in FIG. 21, in the case where the URI includes a uid (user ID) as the parameter, there are an infinite number of values for the uid. Therefore, an infinite number of URIs appear.
When the parameters such as this ID are included in the URI, the URIs with the different IDs are categorized as respective different processes. For example, in the case where the respective URIs have different user IDs even when the URIs correspond to the same process, the respective URIs are categorized as different processes. Accordingly, the data amount of the path information becomes enormous.